Latency improvement methods in native ptt gateway for a group call with dispatch console clients

ABSTRACT

A system and method for pre-allocating PTT resources including user/resource credentials at the native PTT gateway are presented. The user status and floor control information can be buffered at the native PTT gateway until the native PTT gateway receives actual resource/end point information from the media handler. Afterwards, the pre-allocation of PTT resources can be correctly mapped to the actual user resources/end point information when the native PTT gateway receives such information from the media handlers and a call is handled.

CLAIM OF PRIORITY UNDER 35 U.S.C. §119

The present Application for Patent claims priority to ProvisionalApplication No. 61/168,860 entitled “LATENCY IMPROVEMENT METHODS INNATIVE PTT GATEWAY FOR A GROUP CALL WITH DISPATCH CONSOLE CLIENTS” filedApr. 13, 2009, and assigned to the assignee hereof and hereby expresslyincorporated by reference herein.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The embodiments of the invention relates to latency improvement methodsin a native push-to-talk (PTT) gateway related to group calls withdispatch console clients a wireless communication system.

2. Description of the Related Art

Wireless communication systems have developed through variousgenerations, including a first-generation analog wireless phone service(1G), a second-generation (2G) digital wireless phone service (includinginterim 2.5G and 2.75G networks) and a third-generation (3G) high speeddata/Internet-capable wireless service. There are presently manydifferent types of wireless communication systems in use, includingCellular and Personal Communications Service (PCS) systems. Examples ofknown cellular systems include the cellular Analog Advanced Mobile PhoneSystem (AMPS), and digital cellular systems based on Code DivisionMultiple Access (CDMA), Frequency Division Multiple Access (FDMA), TimeDivision Multiple Access (TDMA), the Global System for Mobile access(GSM) variation of TDMA, and newer hybrid digital communication systemsusing both TDMA and CDMA technologies.

The method for providing CDMA mobile communications was standardized inthe United States by the Telecommunications IndustryAssociation/Electronic Industries Association in TIA/EIA/IS-95-Aentitled “Mobile Station-Base Station Compatibility Standard forDual-Mode Wideband Spread Spectrum Cellular System,” referred to hereinas IS-95. Combined AMPS & CDMA systems are described in TIA/EIA StandardIS-98. Other communications systems are described in the IMT-2000/UM, orInternational Mobile Telecommunications System 2000/Universal MobileTelecommunications System, standards covering what are referred to aswideband CDMA (WCDMA), CDMA2000 (such as CDMA2000 1×EV-DO standards, forexample) or TD-SCDMA.

In wireless communication systems, mobile stations, handsets, or accessterminals (AT) receive signals from fixed position base stations (alsoreferred to as cell sites or cells) that support communication links orservice within particular geographic regions adjacent to or surroundingthe base stations. Base stations provide entry points to an accessnetwork (AN)/radio access network (RAN), which is generally a packetdata network using standard Internet Engineering Task Force (IETF) basedprotocols that support methods for differentiating traffic based onQuality of Service (QoS) requirements. Therefore, the base stationsgenerally interact with ATs through an over the air interface and withthe AN through Internet Protocol (IP) network data packets.

In wireless telecommunication systems, Push-to-talk (PTT) capabilitiesare becoming popular with service sectors and consumers. PTT can supporta “dispatch” voice service that operates over standard commercialwireless infrastructures, such as CDMA, FDMA, TDMA, GSM, etc. In adispatch model, communication between endpoints (ATs) occurs withinvirtual groups, wherein the voice of one “talker” is transmitted to oneor more “listeners.” A single instance of this type of communication iscommonly referred to as a dispatch call, or simply a PTT call. A PTTcall is an instantiation of a group, which defines the characteristicsof a call. A group in essence is defined by a member list and associatedinformation, such as group name or group identification.

Conventionally, data packets within a wireless communication networkhave been configured to be sent to a single destination or accessterminal. A transmission of data to a single destination is referred toas “unicast”. As mobile communications have increased, the ability totransmit given data concurrently to multiple access terminals has becomemore important. Accordingly, protocols have been adopted to supportconcurrent data transmissions of the same packet or message to multipledestinations or target access terminals. A “broadcast” refers to atransmission of data packets to all destinations or access terminals(e.g., within a given cell, served by a given service provider, etc.),while a “multicast” refers to a transmission of data packets to a givengroup of destinations or access terminals. In an example, the givengroup of destinations or “multicast group” may include more than one andless than all of possible destinations or access terminals (e.g., withina given group, served by a given service provider, etc.). However, it isat least possible in certain situations that the multicast groupcomprises only one access terminal, similar to a unicast, oralternatively that the multicast group comprises all access terminals(e.g., within a given cell, etc.), similar to a broadcast.

In addition to various transmission schemes (e.g., unicast, multicast,broadcast) that may be used, the PTT call may also be a half duplex or afull duplex communication for at least some of the participants.Generally, a PTT call corresponds to a server mediated communicationbetween two or more identified access terminals, regardless of thevarious configurations used to conduct the PTT calls.

SUMMARY

In an embodiment, a network communications entity may receive from anoriginator wireless communications device a request to initiate a callwith a target wireless communications device. The network entity mayreceive a session request from an access terminal to initiate a callwith at least one target access terminal through a dispatch console. Thenetwork entity may perform an initial allocation of resources associatedwith credentials of the at least one target access terminal. The networkentity may then receive and buffer session updates from the dispatchconsole, and then update the initial allocation of resources based uponthe buffered session updates. The network communications entity may bean application server and include a dispatch function and a gatewayfunction.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings are presented to aid in the description ofembodiments of the invention and are provided solely for illustration ofthe embodiments and not limitation thereof.

FIG. 1 is a diagram of a wireless network architecture that supportsaccess terminals and access networks in accordance with at least oneembodiment of the invention.

FIG. 2A illustrates the carrier network according to an embodiment ofthe present invention.

FIG. 2B illustrates an example of the wireless communication of FIG. 1in more detail.

FIG. 3 is an illustration of an access terminal in accordance with atleast one embodiment of the invention.

FIG. 4 illustrates an exemplary network illustrating a dispatch console(DC) AT4 communicating with AT 1.

FIG. 5 illustrates an exemplary state chart of the exemplary systemdescribed in FIG. 4.

FIG. 6 illustrates an exemplary call flow utilizing latency improvementfor an exemplary group call.

FIG. 7 is a block diagram illustrating an exemplary embodiment of anapplication server.

DETAILED DESCRIPTION

Aspects of the invention are disclosed in the following description andrelated drawings directed to specific embodiments of the invention.Alternate embodiments may be devised without departing from the scope ofthe invention. Additionally, well-known elements of the invention willnot be described in detail or will be omitted so as not to obscure therelevant details of the invention.

The words “exemplary” and/or “example” are used herein to mean “servingas an example, instance, or illustration.” Any embodiment describedherein as “exemplary” and/or “example” is not necessarily to beconstrued as preferred or advantageous over other embodiments. Likewise,the term “embodiments of the invention” does not require that allembodiments of the invention include the discussed feature, advantage ormode of operation.

A High Data Rate (HDR) subscriber station, referred to herein as anaccess terminal (AT), may be mobile or stationary, and may communicatewith one or more HDR base stations, referred to herein as modem pooltransceivers (MPTs) or base stations (BS). An access terminal transmitsand receives data packets through one or more modem pool transceivers toan HDR base station controller, referred to as a modem pool controller(MPC), base station controller (BSC) and/or packet control function(PCF). Modem pool transceivers and modem pool controllers are parts of anetwork called an access network. An access network transports datapackets between multiple access terminals.

The access network may be further connected to additional networksoutside the access network, such as a corporate intranet or theInternet, and may transport data packets between each access terminaland such outside networks. An access terminal that has established anactive traffic channel connection with one or more modem pooltransceivers is called an active access terminal, and is said to be in atraffic state. An access terminal that is in the process of establishingan active traffic channel connection with one or more modem pooltransceivers is said to be in a connection setup state. An accessterminal may be any data device that communicates through a wirelesschannel or through a wired channel, for example using fiber optic orcoaxial cables. An access terminal may further be any of a number oftypes of devices including but not limited to PC card, compact flash,external or internal modem, or wireless or wireline phone. Thecommunication link through which the access terminal sends signals tothe modem pool transceiver is called a reverse link or traffic channel.The communication link through which a modem pool transceiver sendssignals to an access terminal is called a forward link or trafficchannel. As used herein the term traffic channel can refer to either aforward or reverse traffic channel.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of embodiments ofthe invention. As used herein, the singular forms “a”, “an” and “the”are intended to include the plural forms as well, unless the contextclearly indicates otherwise. It will be further understood that theterms “comprises”, “comprising,”, “includes” and/or “including”, whenused herein, specify the presence of stated features, integers, steps,operations, elements, and/or components, but do not preclude thepresence or addition of one or more other features, integers, steps,operations, elements, components, and/or groups thereof.

Further, many embodiments are described in terms of sequences of actionsto be performed by, for example, elements of a computing device. It willbe recognized that various actions described herein can be performed byspecific circuits (e.g., application specific integrated circuits(ASICs)), by program instructions being executed by one or moreprocessors, or by a combination of both. Additionally, these sequence ofactions described herein can be considered to be embodied entirelywithin any form of computer readable storage medium having storedtherein a corresponding set of computer instructions that upon executionwould cause an associated processor to perform the functionalitydescribed herein. Thus, the various aspects of the invention may beembodied in a number of different forms, all of which have beencontemplated to be within the scope of the claimed subject matter. Inaddition, for each of the embodiments described herein, thecorresponding form of any such embodiments may be described herein as,for example, “logic configured to” perform the described action.

FIG. 1 illustrates a block diagram of one exemplary embodiment of awireless system 100 in accordance with at least one embodiment of theinvention. System 100 can contain access terminals, such as cellulartelephone 102, in communication across an air interface 104 with anaccess network or radio access network (RAN) 120 that can connect theaccess terminal 102 to network equipment providing data connectivitybetween a packet switched data network (e.g., an intranet, the Internet,and/or carrier network 126) and the access terminals 102, 108, 110, 112.As shown here, the access terminal can be a cellular telephone 102, apersonal digital assistant 108, a pager 110, which is shown here as atwo-way text pager, or even a separate computer platform 112 that has awireless communication portal. Embodiments of the invention can thus berealized on any form of access terminal including a wirelesscommunication portal or having wireless communication capabilities,including without limitation, wireless modems, PCMCIA cards, personalcomputers, telephones, or any combination or sub-combination thereof.Further, as used herein, the terms “access terminal”, “wireless device”,“client device”, “mobile terminal” and variations thereof may be usedinterchangeably.

Referring back to FIG. 1, the components of the wireless network 100 andinterrelation of the elements of the exemplary embodiments of theinvention are not limited to the configuration illustrated. System 100is merely exemplary and can include any system that allows remote accessterminals, such as native PTT client computing devices 102, 108, 110,112 to communicate over-the-air between and among each other and/orbetween and among components connected via the air interface 104 and RAN120, including, without limitation, carrier network 126, the Internet,and/or other remote servers. As used herein, a native PTT client may bea Push-To-Talk client that interfaces with the Application Server bymechanisms other than SIP.

The RAN 120 controls messages (typically sent as data packets) sent to abase station controller/packet control function (BSC/PCF) 122. TheBSC/PCF 122 is responsible for signaling, establishing, and tearing downbearer channels (i.e., data channels) between a packet data service node100 (“PDSN”) and the access terminals 102/108/110/112. If link layerencryption is enabled, the BSC/PCF 122 also encrypts the content beforeforwarding it over the air interface 104. The function of the BSC/PCF122 is well-known in the art and will not be discussed further for thesake of brevity. The carrier network 126 may communicate with theBSC/PCF 122 by a network, the Internet and/or a public switchedtelephone network (PSTN). Alternatively, the BSC/PCF 122 may connectdirectly to the Internet or external network. Typically, the network orInternet connection between the carrier network 126 and the BSC/PCF 122transfers data, and the PSTN transfers voice information. The BSC/PCF122 can be connected to multiple base stations (BS) or modem pooltransceivers (MPT) 124. In a similar manner to the carrier network, theBSC/PCF 122 is typically connected to the MPT/BS 124 by a network, theInternet and/or PSTN for data transfer and/or voice information. TheMPT/BS 124 can broadcast data messages wirelessly to the accessterminals, such as cellular telephone 102. The MPT/BS 124, BSC/PCF 122and other components may form the RAN 120, as is known in the art.However, alternate configurations may also be used and the embodimentsare not limited to the configuration illustrated. For example, inanother embodiment the functionality of the BSC/PCF 122 and one or moreof the MPT/BS 124 may be collapsed into a single “hybrid” module havingthe functionality of both the BSC/PCF 122 and the MPT/BS 124.

FIG. 2A illustrates the carrier network 126 according to an embodimentof the present invention. In the embodiment of FIG. 2A, the carriernetwork 126 includes a packet data serving node (PDSN) 160, a broadcastserving node (BSN) 165, an application server 170 and an Internet 175.However, application server 170 and other components may be locatedoutside the carrier network in alternative embodiments. The PDSN 160provides access to the Internet 175, intranets and/or remote servers(e.g., application server 170) for mobile stations (e.g., accessterminals, such as 102, 108, 110, 112 from FIG. 1) utilizing, forexample, a cdma2000 Radio Access Network (RAN) (e.g., RAN 120 of FIG.1). Acting as an access gateway, the PDSN 160 may provide simple IP andmobile IP access, foreign agent support, and packet transport. The PDSN160 can act as a client for Authentication, Authorization, andAccounting (AAA) servers and other supporting infrastructure andprovides mobile stations with a gateway to the IP network as is known inthe art. As shown in FIG. 2A, the PDSN 160 may communicate with the RAN120 (e.g., the BSC/PCF 122) via a conventional A10 connection. The A10connection is well-known in the art and will not be described furtherfor the sake of brevity.

Referring to FIG. 2A, the broadcast serving node (BSN) 165 may beconfigured to support multicast and broadcast services. The BSN 165communicates with the RAN 120 (e.g., the BSC/PCF 122) via a broadcast(BC) A10 connection, and with the application server 170 via theInternet 175. The BCA10 connection is used to transfer multicast and/orbroadcast messaging. Accordingly, the application server 170 may sendunicast messaging to the PDSN 160 via the Internet 175, and may sendmulticast messaging to the BSN 165 via the Internet 175.

FIG. 2B illustrates an example of the wireless communication system 100of FIG. 1 in more detail. In particular, referring to FIG. 2B, ATs 1 . .. N are shown as connecting to the RAN 120 at locations serviced bydifferent packet data network end-points. Accordingly, ATs 1 and 3connect to the RAN 120 at a portion served by a first packet datanetwork end-point 162 (e.g., which may correspond to PDSN 160, BSN 165,a home agent (HA), a foreign agent (FA), etc.). The first packet datanetwork end-point 162 in turn connects, via the routing unit 188, to theInternet 175 and/or to one or more of an authentication, authorizationand accounting (AAA) server 182, a provisioning server 184, an InternetProtocol (IP) Multimedia Subsystem (IMS)/Session Initiation Protocol(SIP) Registration Server 186 and/or the application server 170. ATs 2and 5 . . . N connect to the RAN 120 at a portion served by a secondpacket data network end-point 164 (e.g., which may correspond to PDSN160, BSN 165, FA, HA, etc.). Similar to the first packet data networkend-point 162, the second packet data network end-point 164 in turnconnects, via the routing unit 188, to the Internet 175 and/or to one ormore of the AAA server 182, a provisioning server 184, an IMS/SIPRegistration Server 186 and/or the application server 170. AT 4 connectsdirectly to the Internet 175, and through the Internet 175 can thenconnect to any of the system components described above.

Referring to FIG. 2B, ATs 1, 3 and 5 . . . N are illustrated as wirelesscell-phones, AT 2 is illustrated as a wireless tablet-PC and AT 4 isillustrated as a wired desktop station. However, in other embodiments,it will be appreciated that the wireless communication system 100 canconnect to any type of AT, and the examples illustrated in FIG. 2B arenot intended to limit the types of ATs that may be implemented withinthe system. Also, while the AAA 182, the provisioning server 184, theIMS/SIP registration server 186 and the application server 170 are eachillustrated as structurally separate servers, one or more of theseservers may be consolidated in at least one embodiment of the invention.

Referring to FIG. 3, an access terminal 200, (here a wireless device),such as a cellular telephone, has a platform 202 that can receive andexecute software applications, data and/or commands transmitted from theRAN 120 that may ultimately come from the carrier network 126, theInternet and/or other remote servers and networks. The platform 202 caninclude a transceiver 206 operably coupled to an application specificintegrated circuit (“ASIC” 208), or other processor, microprocessor,logic circuit, or other data processing device. The ASIC 208 or otherprocessor executes the application programming interface (“API’) 210layer that interfaces with any resident programs in the memory 212 ofthe wireless device. The memory 212 can be comprised of read-only orrandom-access memory (RAM and ROM), EEPROM, flash cards, or any memorycommon to computer platforms. The platform 202 also can include a localdatabase 214 that can hold applications not actively used in memory 212.The local database 214 is typically a flash memory cell, but can be anysecondary storage device as known in the art, such as magnetic media,EEPROM, optical media, tape, soft or hard disk, or the like. Theinternal platform 202 components can also be operably coupled toexternal devices such as antenna 222, display 224, push-to-talk button228 and keypad 226 among other components, as is known in the art.

Accordingly, an embodiment of the invention can include an accessterminal including the ability to perform the functions describedherein. As will be appreciated by those skilled in the art, the variouslogic elements can be embodied in discrete elements, software modulesexecuted on a processor or any combination of software and hardware toachieve the functionality disclosed herein. For example, ASIC 208,memory 212, API 210 and local database 214 may all be used cooperativelyto load, store and execute the various functions disclosed herein andthus the logic to perform these functions may be distributed overvarious elements. Alternatively, the functionality could be incorporatedinto one discrete component. Therefore, the features of the accessterminal in FIG. 3 are to be considered merely illustrative and theinvention is not limited to the illustrated features or arrangement.

The wireless communication between the access terminal 102 and the RAN120 can be based on different technologies, such as code divisionmultiple access (CDMA), WCDMA, time division multiple access (TDMA),frequency division multiple access (FDMA), orthogonal frequency divisionmultiple access (OFDMA), the Global System for Mobile Communications(GSM), or other protocols that may be used in a wireless communicationsnetwork or a data communications network. The data communication istypically between the client device 102, MPT/BS 124, and BSC/PCF 122.The BSC/PCF 122 can be connected to multiple data networks such as thecarrier network 126, PSTN, the Internet, a virtual private network, andthe like, thus allowing the access terminal 102 access to a broadercommunication network. As discussed in the foregoing and known in theart, voice transmission and/or data can be transmitted to the accessterminals from the RAN using a variety of networks and configurations.Accordingly, the illustrations provided herein are not intended to limitthe embodiments of the invention and are merely to aid in thedescription of aspects of embodiments of the invention.

Referring to FIG. 4, an exemplary network illustrating a dispatchconsole (DC) AT4 communicating with AT1. An access terminal AT1 maycommunicate with dispatch console (DC) AT4 and access terminals AT2 andAT5 via application server (AS) 170. Furthermore, the application server170 may include a dispatch function 107 a and a gateway function 107 d.Also, while the dispatch function 170 a and the gateway function 107 dare each illustrated as structurally separate servers, one or more ofthese servers may be consolidated in at least one embodiment of theinvention. While portions of FIG. 4 are described with respect to SIP,it will be appreciated that other embodiments can be implemented inaccordance with protocols other than SIP.

Referring to FIG. 4, the DC AT4 may monitor group call (e.g., a callthat potentially includes more than two calling parties). In thisembodiment, a PTT application or client may reside on DC AT4 along withthe gateway function 170 d. The DC AT4 can have special privileges; forexample, the ability to monitor calls, the ability to join multiplecalls simultaneously, and the ability to allow a DC user toswitch/join/leave multiple calls. The DC AT4 may be deployed at controlrooms and other critical locations and can be operated by a user whosomeone who has a broad authority/view of the PTT groups/environment.Further, the DC AT 104 may also have a User Interface (UI) which canfacilitate any of the above functions.

Referring to FIG. 4, AT1 can make a PTT call and the dispatch function107 a subsequently receives and forwards a session request. The gatewayfunction 107 d can pre-allocate or initialize user/resource allocationand can send out a session announcement to a foreign PTT gateway (DCAT4). The foreign PTT gateway DC AT4 can avoid call latency by notwaiting for native PTT user/media credentials to arrive beforeproceeding with session paging. The gateway function 107 d may contain abuffer that can be used to buffer user status and floor controlinformation until the gateway function 107 d receives the actualresource/end point information from the media handler or dispatchfunction 107 a. The pre-allocation of resources could be correctlymapped to the actual user/resource credentials when a call is handledand the gateway function 107 d receives such information from the mediahandlers or dispatch function 107 d.

Access terminal AT1 may make a call to dispatch console users AT2 andAT5 by sending a session request message to the dispatch function 107 a,401. The dispatch function 107 a can forward the request by sending asession announce message to the gateway function 107 d, 403.

Next, the gateway function 107 d can perform initial resource allocationsuch that some or all credentials are in place for the foreign PTTgateway DC AT4 to page (session announce) the target access terminals(e.g., the called phones), 405. The initial resource allocation can be acomponent that handles media ports at the data side and floor control.The initial resource allocation can include user credential informationand Real-Time Protocol (RTP) and SIP unique identifiers (e.g. “port” and“host” information).

Afterwards, the gateway function 107 d can send a session announcemessage to the foreign PTT gateway DC AT4, 407. The session announcemessage is received by the foreign PTT gateway DC AT4 and may containnative resource information, 409.

Subsequently, the foreign PTT gateway DC AT4 can page the dispatchconsole users AT2 and AT5, 411. The foreign PTT gateway DC AT4 can senda success message to the gateway function 107 d, 413. Next, the gatewayfunction 107 d can send session indication information to the dispatchfunction 107 a, 415. Afterwards, the foreign PTT gateway DC AT4 can sendsession updates to the gateway function 107 d, 417. For example, thesession updates can include messages indicating that specific users wantto join the call/leave the call, and/or a specific user is busy, etc.

Subsequently, the session updates sent by the foreign PTT gateway DC AT4are stored in a buffer, 419. The session update information is bufferedbecause the gateway function 107 d does not have the native phone'sinformation session information. The buffer can enable the gatewayfunction 107 d to buffer all received messages until call set up iscompleted. Further, this can include all call status messages originatedfrom either the gateway function 107 d or from the foreign PTT gatewayDC AT4. For example, in a gateway originated PTT group call, the buffercan hold the transmission of all messages until a success message isreceived from the foreign PTT gateway DC AT4 which allows for signalsynchronization between the native PTT (AT1) and dispatch console usersAT2 and AT5. Furthermore, the buffer can operate like a first-infirst-out (FIFO) queue which is checked every time a status or a floorcontrol message is received/queued and the first message in the queue issent out. A message is removed from the queue after a successfulacknowledgement from the receiver of the message. The queue also helpswith serialization of messages before moving into a call establishedstate.

The dispatch function 107 a can perform actual resource allocation, 421.The actual resource allocation can include user credential information(Internet Protocol (IP) Addresses, unique user identifiers (UID) andReal-Time Protocol (RTP) and SIP unique identifiers (e.g. “port” and“host” information).

Next, the dispatch function 107 a can send session information to thegateway function 107 d, 423. For example, the session information caninclude handset information about the various users, port numbers andinformation, IP addresses, UID, etc.

Afterwards, the gateway function 107 d can update the initial resourceallocation with the actual resource information, 425. In one exemplaryembodiment, the update of the actual resource information includes amapping function that places the actual resource information into theinitial resource allocation.

The gateway function 107 d can send session updates to the dispatchfunction 107 a, 427.

Referring to FIG. 5, a state chart of the system described in FIG. 4 isillustrated. The state chart is started when a session announce messageis received from the gateway function 107 d, 501. Next, the gatewayfunction 107 d enters an initial state, 503. The gateway function 107 dcan perform initial resource allocation such that some or allcredentials are in place for the foreign PTT gateway DC AT4 to page(session announce) target access terminals (e.g., the called phones),505. Afterwards, the gateway function 107 d can send an invite messageto the foreign PTT gateway DC AT4, 507. The invite message is receivedby the foreign PTT gateway DC AT4 and may contain native resourceinformation, 509.

The gateway function 107 d can send session indication information whichmay include announce success information to the dispatch function 107 a,511. Next, session updates sent by the foreign PTT gateway DC AT4 whichmay include call status or floor control messages are stored in abuffer, 513. Afterwards, session information and credentials can be sentto the gateway function 107 d, 515. For example, the credentials caninclude buffer status and floor control. Subsequently, the gatewayfunction 107 d can receive call information from the call handler ordispatch function 107 a, 517. The call information can include theupdated actual resource allocation.

The gateway function 107 d can update the initial resource allocationwith the actual resource information, 519. In one exemplary embodiment,the update of the actual resource information includes a mappingfunction that places the actual resource information into the initialresource allocation.

Next, the gateway function 107 d can send status/session updates to thecall handler or dispatch function 107 a and the foreign PTT gateway DCAT4, 521. Afterwards, the call is established and the gateway function107 d can send media to the call handler or dispatch function 107 a andthe foreign PTT gateway DC AT4, 523.

Referring to FIG. 6, an exemplary call flow is illustrated where latencyimprovement is employed for a group call for an exemplary embodiment.Accordingly, a dispatch function 107 a receives a session requestmessage, 601. Next, the dispatch function 107 a can forward the requestby sending a session request message to the gateway function 107 d, 603.

The gateway function 107 d can perform initial resource allocation suchthat some or all credentials are in place for the foreign PTT gateway DCAT4 to page (session announce) the called phones, 605. The initialresource allocation can be a component that handles media ports at thedata side and floor control. The initial resource allocation can includeuser credential information and Real-Time Protocol (RTP) and SIP uniqueidentifiers (e.g. “port” and “host” information).

Afterwards, the gateway function 107 d can send a session page messageto the foreign PTT gateway DC AT4, 507. The session page message isreceived by the foreign PTT gateway DC AT4 and is forwarded to anydispatch console users AT2 and AT5, 509. The session page message maycontain native resource information. Subsequently, the foreign PTTgateway DC AT4 can receive a page response message from any dispatchconsole users AT2 and AT5, 611.

The foreign PTT gateway DC AT4 can send a page response message to thegateway function 107 d, 613. Next, the gateway function 107 d can send asession response message to the dispatch function 107 a, 615. Thedispatch function 107 a can send a session response message, 617.

Afterwards, the foreign PTT gateway DC AT4 can receive session updates,619. For example, the session updates can include messages indicatingthat specific users want to join the call/leave the call, and/or aspecific user is busy, etc. The foreign PTT gateway DC AT4 can sendsession updates to the gateway function 107 d, 621. Subsequently, thesession updates sent by the foreign PTT gateway DC AT4 are stored in abuffer, 623.

The dispatch function 107 a can perform actual resource allocation, 625.The actual resource allocation can include user credential information(Internet Protocol (IP) Addresses, unique user identifiers (UID) andReal-Time Protocol (RTP) and SIP unique identifiers (e.g. “port” and“host” information).

Next, the dispatch function 107 a can send a session confirmationmessage, 627. The dispatch function 107 a can receive a source responseacknowledgment (ACK) message, 629. Afterwards, the dispatch function 107a can send session information to the gateway function 107 d, 631. Thegateway function 107 d can update the initial resource allocation withthe actual resource information, 633. In one exemplary embodiment, theupdate of the actual resource information includes a mapping functionthat places the actual resource information into the initial resourceallocation. Next, the gateway function 107 d can send session updates tothe dispatch function 107 a, 635.

FIG. 7 is a block diagram illustrating one exemplary embodiment of anapplication server 700. The application server 700 may be a separatedevice which can be present on a server-side LAN 730, wherein itfunctionality is discussed above. For the sake of simplicity, thevarious features and functions illustrated in the block diagram of FIG.7 are connected together using a common bus which is meant to representthat these various features and functions are operatively coupledtogether. Those skilled in the art will recognize that otherconnections, mechanisms, features, functions, or the like, may beprovided and adapted as necessary to operatively couple and configure anactual portable wireless device. Further, it is also recognized that oneor more of the features or functions illustrated in the example of FIG.7 may be further subdivided or two or more of the features or functionsillustrated in FIG. 7 may be combined.

The application server 700 may include a network interface 705 that maybe wired and/or wireless for communicating over the server side LAN. Aprocessor 710 may be connected to the network interface 705, a userinterface 715 and memory 720. The processor 710 may include one or moremicroprocessors, microcontrollers, and/or digital signal processors thatprovide processing functions, as well as other calculation and controlfunctionality. The processor 710 accesses memory 720 for reading/writingdata and/or software instructions for executing programmedfunctionality. The memory 720 may be on-board the processor 710 (e.g.,within the same IC package), and/or the memory may be external memory tothe processor and functionally coupled over a data bus.

A number of software modules and/or data tables may reside in memory 720and be utilized by the processor 710 for resource and session managementfunctionality, including functionality describe above. As illustratedhere, within memory 720, the application server 700 may further includeor otherwise provide a Dispatch Function Module 730 and/or a GatewayFunction Module. While the software modules 730,735 are illustrated inthe example as being contained in memory 720, it should be recognizedthat in certain implementations such procedures may be provided for orotherwise operatively arranged using other or additional mechanisms. Forexample, all or part of software modules 730,735 may be provided infirmware. Additionally, while in FIG. 7 the software modules 730,735 areshown as a single distinct entity for ease of description, it should beunderstood that it may include a plurality of modules that are notillustrated, or otherwise be further partitioned into a differing groupsof procedures.

Those of skill in the art will appreciate that information and signalsmay be represented using any of a variety of different technologies andtechniques. For example, data, instructions, commands, information,signals, bits, symbols, and chips that may be referenced throughout theabove description may be represented by voltages, currents,electromagnetic waves, magnetic fields or particles, optical fields orparticles, or any combination thereof.

Further, those of skill in the art will appreciate that the variousillustrative logical blocks, modules, circuits, and algorithm stepsdescribed in connection with the embodiments disclosed herein may beimplemented as electronic hardware, computer software, or combinationsof both. To clearly illustrate this interchangeability of hardware andsoftware, various illustrative components, blocks, modules, circuits,and steps have been described above generally in terms of theirfunctionality. Whether such functionality is implemented as hardware orsoftware depends upon the particular application and design constraintsimposed on the overall system. Skilled artisans may implement thedescribed functionality in varying ways for each particular application,but such implementation decisions should not be interpreted as causing adeparture from the scope of the present invention.

The methods, sequences and/or algorithms described in connection withthe embodiments disclosed herein may be embodied directly in hardware,in a software module executed by a processor, or in a combination of thetwo. A software module may reside in RAM memory, flash memory, ROMmemory, EPROM memory, EEPROM memory, registers, hard disk, a removabledisk, a CD-ROM, or any other form of storage medium known in the art. Anexemplary storage medium is coupled to the processor such that theprocessor can read information from, and write information to, thestorage medium. In the alternative, the storage medium may be integralto the processor.

Accordingly, the embodiments of the invention are not limited toillustrated examples and any means for performing the functionalitydescribed herein are included in embodiments of the invention.

While the foregoing disclosure shows illustrative embodiments of theinvention, it should be noted that various changes and modificationscould be made herein without departing from the scope of the inventionas defined by the appended claims. The functions, steps and/or actionsof the method claims in accordance with the embodiments of the inventiondescribed herein need not be performed in any particular order.Furthermore, although elements of the invention may be described orclaimed in the singular, the plural is contemplated unless limitation tothe singular is explicitly stated.

1. A method for improving latency in a wireless communications system,comprising: receiving a session request from an access terminal toinitiate a call with at least one target access terminal through adispatch console; performing an initial allocation of resourcesassociated with credentials of the at least one target access terminal;receiving and buffering session updates from the dispatch console; andupdating the initial allocation of resources based upon the bufferedsession updates.
 2. The method of claim 1, further comprising: receivingthe session request message at a dispatch function; and sending asession announce message to a gateway function.
 3. The method of claim2, further comprising: forwarding the session announce message to thedispatch console; and sending a session indication message from thegateway function to the dispatch function.
 4. The method of claim 3,wherein updating the initial allocation of resources further comprises:allocating actual resources based upon the session indication message;sending a session information message from the dispatch function to thegateway function; and updating the initial resource allocation with anactual allocation based upon the session information message.
 5. Themethod of claim 4, wherein the allocating actual resources includesallocating user credential information, unique user identifiers, RealTime Protocol identifiers, and/or Session Initiation Protocolidentifiers.
 6. The method of claim 4, wherein the session informationmessage includes access terminal information regarding users, portnumbers and information, Internet Protocol (IP) addresses, and/or UserIdentifier (UID) information.
 7. The method of claim 1, wherein thebuffering further comprises: buffering received messages until a callsetup is completed.
 8. The method of claim 7, wherein the messagesinclude user and/or resource credentials for the dispatch console topage the target access terminals.
 9. The method of claim 1, wherein thebuffering further comprises: operating a first-in first-out (FIFO)buffer which is checked every time a status and/or a floor controlmessage is received and the first message in a queue is sent out. 10.The method of claim 9, further comprising: removing a message from thequeue after a successful acknowledgement is received.
 11. The method ofclaim 1, wherein the initial resource allocation further comprises:managing media ports and floor control.
 12. The method of claim 1,wherein the buffered session updates include call status messagesoriginating from the gateway function and/or the dispatch console. 13.The method of claim 1, wherein the buffered messages include messagesindicating specific users joining and/or leaving the call, and anindication that a specific user is busy.
 14. The method of claim 1,wherein the updating the initial allocation of resources furthercomprises: mapping the actual resource information into the initialresource allocation.
 15. The method of claim 1, wherein the call is agroup call, further comprising: receiving a plurality of session updatesfrom the dispatch console.
 16. A system for improving latency in awireless communications system, comprising: means for receiving asession request from an access terminal to initiate a call with at leastone target access terminal through a dispatch console; means forperforming an initial allocation of resources associated withcredentials of the at least one target access terminal; means forreceiving and buffering session updates from the dispatch console; andmeans for updating the initial allocation of resources based upon thebuffered session updates.
 17. The system of claim 16, furthercomprising: means for receiving the session request message at adispatch function; and means for sending a session announce message to agateway function.
 18. The system of claim 17, further comprising: meansfor forwarding the session announce message to the dispatch console; andmeans for sending a session indication message from the gateway functionto the dispatch function.
 19. The system of claim 18, wherein the meansfor updating the initial allocation of resources further comprises:means for allocating actual resources based upon the session indicationmessage; means for sending a session information message from thedispatch function to the gateway function; and means for updatinginitial resource allocation with an actual allocation based upon thesession information message.
 20. The system of claim 19, wherein themeans for allocating actual resources includes means for allocating usercredential information, unique user identifiers, Real Time Protocolidentifiers, and/or Session Initiation Protocol identifiers.
 21. Thesystem of claim 19, wherein the session information message includesaccess terminal information regarding users, port numbers andinformation, Internet Protocol (IP) addresses, and/or User Identifier(UID) information.
 22. The system of claim 16, wherein the means forbuffering further comprises: means for buffering received messages untila call setup is completed.
 23. The system of claim 22, wherein themessages include user and/or resource credentials for the dispatchconsole to page the target access terminals.
 24. The system of claim 16,wherein the means for buffering further comprises: means for operating afirst-in first-out (FIFO) buffer which is checked every time a statusand/or a floor control message is received and the first message in aqueue is sent out.
 25. The system of claim 24, further comprising: meansfor removing a message from the queue after a successful acknowledgementis received.
 26. The system of claim 16, wherein the means for initialresource allocation further comprises: means for managing media portsand floor control.
 27. The system of claim 16, wherein the bufferedsession updates include call status messages originating from thegateway function and/or the dispatch console.
 28. The system of claim16, wherein the buffered messages include messages indicating specificusers joining and/or leaving the call, and an indication that a specificuser is busy.
 29. The system of claim 16, wherein the means for updatingthe initial allocation of resources further comprises: means for mappingthe actual resource information into the initial resource allocation.30. The system of claim 16, wherein the call is a group call, the systemfurther comprising: means for receiving a plurality of session updatesfrom the dispatch console.
 31. A computer-readable medium havinginstructions embodied thereon, comprising: a set of instructions toreceive a session request from an access terminal to initiate a callwith at least one target access terminal through a dispatch console; aset of instructions to perform an initial allocation of resourcesassociated with credentials of the at least one target access terminal;a set of instructions to receive and buffer session updates from thedispatch console; and a set of instructions to update the initialallocation of resources based upon the buffered session updates.
 32. Thecomputer-readable medium of claim 31, further comprising: a set ofinstructions to receive the session request message at a dispatchfunction; and a set of instructions to send a session announce messageto a gateway function.
 33. The computer-readable medium of claim 32,further comprising: a set of instructions to forward the sessionannounce message to the dispatch console; and a set of instructions tosend a session indication message from the gateway function to thedispatch function.
 34. The computer-readable medium of claim 33, whereinupdating the initial allocation of resources further comprises: a set ofinstructions to allocate actual resources based upon the sessionindication message; a set of instructions to send a session informationmessage from the dispatch function to the gateway function; and a set ofinstructions to update initial resource allocation with an actualallocation based upon the session information message.
 35. An apparatusimproving latency in a wireless communications system, comprising: aprocessor; and a memory coupled to the processor, wherein the memorystores instructions causing the processor to receive a session requestfrom an access terminal to initiate a call with at least one targetaccess terminal through a dispatch console, perform an initialallocation of resources associated with credentials of the at least onetarget access terminal, receive and buffer session updates from thedispatch console; and update the initial allocation of resources basedupon the buffered session updates.
 36. The apparatus of claim 35,wherein the memory stores instructions further causing the processor toreceive the session request message at a dispatch function; and send asession announce message to a gateway function.
 37. The apparatus ofclaim 36, wherein the memory stores instructions further causing theprocessor to forward the session announce message to the dispatchconsole; and send a session indication message from the gateway functionto the dispatch function.
 38. The apparatus of claim 37, wherein thememory stores instructions further causing the processor to allocateactual resources based upon the session indication message; send asession information message from the dispatch function to the gatewayfunction; and update initial resource allocation with an actualallocation based upon the session information message.
 39. The apparatusof claim 38, wherein the memory stores instructions further causing theprocessor to allocate user credential information, unique useridentifiers, Real Time Protocol identifiers, and/or Session InitiationProtocol identifiers.
 40. The apparatus of claim 38, wherein the sessioninformation message includes access terminal information regardingusers, port numbers and information, Internet Protocol (IP) addresses,and/or User Identifier (UID) information.
 41. The apparatus of claim 35,wherein the memory stores instructions further causing the processor tobuffer received messages until a call setup is completed.
 42. Theapparatus of claim 35, wherein the buffered session updates include callstatus messages originating from the gateway function and/or thedispatch console.
 43. The apparatus of claim 35, wherein the bufferedmessages include messages indicating specific users joining and/orleaving the call, and an indication that a specific user is busy. 44.The apparatus of claim 43, wherein the messages include user and/orresource credentials for the dispatch console to page the target accessterminals.
 45. The apparatus of claim 35, wherein the memory storesinstructions further causing the processor to operate a first-infirst-out (FIFO) buffer which is checked every time a status and/or afloor control message is received and the first message in a queue issent out.
 46. The apparatus of claim 45, wherein the memory storesinstructions further causing the processor to remove a message from thequeue after a successful acknowledgement is received.
 47. The apparatusof claim 35, wherein the memory stores instructions further causing theprocessor to manage media ports and floor control.
 48. The apparatus ofclaim 35, wherein the memory stores instructions further causing theprocessor to map the actual resource information into the initialresource allocation.
 49. The apparatus of claim 35, wherein the memorystores instructions further causing the processor to receive a pluralityof session updates from the dispatch console.